How to add a data table to the chart in C# |
您所在的位置:网站首页 › chart table › How to add a data table to the chart in C# |
In Excel, we could use charts to visualize and compare data. However, once the charts are created, it becomes much difficult for us to read the data precisely from charts. Adding a data table below the chart is a good solution for which the chart and data are on the same place. This article is going to introduce the method to add a data table to the chart that is based on the data in C# using Spire.XLS. Note: before start, please download the latest version of Spire.XLS and add the .dll in the bin folder as the reference of Visual studio. Step 1: Create a new workbook and add an empty sheet. Workbook workbook = new Workbook(); workbook.CreateEmptySheets(1); Worksheet sheet = workbook.Worksheets[0];Step 2: Fill cells with sample data. sheet.Name = "Demo"; sheet.Range["A1"].Value = "Month"; sheet.Range["A2"].Value = "Jan."; sheet.Range["A3"].Value = "Feb."; sheet.Range["A4"].Value = "Mar."; sheet.Range["A5"].Value = "Apr."; sheet.Range["A6"].Value = "May."; sheet.Range["A7"].Value = "Jun."; sheet.Range["B1"].Value = "Peter"; sheet.Range["B2"].NumberValue = 3.3; sheet.Range["B3"].NumberValue = 2.5; sheet.Range["B4"].NumberValue = 2.0; sheet.Range["B5"].NumberValue = 3.7; sheet.Range["B6"].NumberValue = 4.5; sheet.Range["B7"].NumberValue = 4.0; sheet.Range["C1"].Value = "George"; sheet.Range["C2"].NumberValue = 3.8; sheet.Range["C3"].NumberValue = 3.2; sheet.Range["C4"].NumberValue = 1.7; sheet.Range["C5"].NumberValue = 3.5; sheet.Range["C6"].NumberValue = 4.5; sheet.Range["C7"].NumberValue = 4.3; sheet.Range["D1"].Value = "Macbeth"; sheet.Range["D2"].NumberValue = 3.0; sheet.Range["D3"].NumberValue = 2.8; sheet.Range["D4"].NumberValue = 3.5; sheet.Range["D5"].NumberValue = 2.3; sheet.Range["D6"].NumberValue = 3.3; sheet.Range["D7"].NumberValue = 3.8;Step 3: Create a Column3DClustered based on the sample data. Chart chart = sheet.Charts.Add(ExcelChartType.Column3DClustered); chart.DataRange = sheet.Range["B1:D7"]; chart.SeriesDataFromRange = false; chart.TopRow = 7; chart.BottomRow = 28; chart.LeftColumn = 3; chart.RightColumn =11; chart.ChartTitle = "Chart with Data Table"; chart.ChartTitleArea.IsBold = true; chart.ChartTitleArea.Size = 12; Spire.Xls.Charts.ChartSerie cs1 = chart.Series[0]; cs1.CategoryLabels = sheet.Range["A2:A7"];Step 4: Add a data table to the chart that is based on the data. chart.HasDataTable = true;Step 5: Save the document and launch to see effects. workbook.SaveToFile("S3.xlsx", ExcelVersion.Version2010); System.Diagnostics.Process.Start("S3.xlsx");Effects: Full codes: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Spire.Xls; using System.Drawing; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { Workbook workbook = new Workbook(); workbook.CreateEmptySheets(1); Worksheet sheet = workbook.Worksheets[0]; sheet.Name = "Demo"; sheet.Range["A1"].Value = "Month"; sheet.Range["A2"].Value = "Jan."; sheet.Range["A3"].Value = "Feb."; sheet.Range["A4"].Value = "Mar."; sheet.Range["A5"].Value = "Apr."; sheet.Range["A6"].Value = "May."; sheet.Range["A7"].Value = "Jun."; sheet.Range["B1"].Value = "Peter"; sheet.Range["B2"].NumberValue = 3.3; sheet.Range["B3"].NumberValue = 2.5; sheet.Range["B4"].NumberValue = 2.0; sheet.Range["B5"].NumberValue = 3.7; sheet.Range["B6"].NumberValue = 4.5; sheet.Range["B7"].NumberValue = 4.0; sheet.Range["C1"].Value = "George"; sheet.Range["C2"].NumberValue = 3.8; sheet.Range["C3"].NumberValue = 3.2; sheet.Range["C4"].NumberValue = 1.7; sheet.Range["C5"].NumberValue = 3.5; sheet.Range["C6"].NumberValue = 4.5; sheet.Range["C7"].NumberValue = 4.3; sheet.Range["D1"].Value = "Macbeth"; sheet.Range["D2"].NumberValue = 3.0; sheet.Range["D3"].NumberValue = 2.8; sheet.Range["D4"].NumberValue = 3.5; sheet.Range["D5"].NumberValue = 2.3; sheet.Range["D6"].NumberValue = 3.3; sheet.Range["D7"].NumberValue = 3.8; Chart chart = sheet.Charts.Add(ExcelChartType.Column3DClustered); chart.DataRange = sheet.Range["B1:D7"]; chart.SeriesDataFromRange = false; chart.TopRow = 7; chart.BottomRow = 28; chart.LeftColumn = 3; chart.RightColumn =11; chart.ChartTitle = "Chart with Data Table"; chart.ChartTitleArea.IsBold = true; chart.ChartTitleArea.Size = 12; Spire.Xls.Charts.ChartSerie cs1 = chart.Series[0]; cs1.CategoryLabels = sheet.Range["A2:A7"]; chart.HasDataTable = true; workbook.SaveToFile("S3.xlsx", ExcelVersion.Version2010); System.Diagnostics.Process.Start("S3.xlsx"); } } } |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |